package yx1;

import 序列化和反序列化克隆.cloneUtil;

import java.util.Date;

public class programxl {
    public static void main(String[] args) {
        //初始化参数
        Attachment att = new Attachment();
        att.setName("我是谁附件");

        WeeklyLog wl = new WeeklyLog();
        wl.setAttachment(att);
        wl.setName("189");
        Date date = new Date();
        wl.setDate(date);
        wl.setContent("今天我干了什么啊！");

        //调用序列化克隆方法
        Attachment att1 = cloneUtil.cloneObject(att);
        WeeklyLog wl1 = cloneUtil.cloneObject(wl);

        //没有克隆前的对象
        System.out.println(att);
        System.out.println(wl);
        System.out.println("=========================================================================================================");

        //克隆对象
        System.out.println(att1);
        System.out.println(wl1);
        System.out.println("=========================================================================================================");

        //修改引用类型的值查看克隆类是否改变
        att.setName("我是附件1");
        System.out.println(att);
        System.out.println(wl);

        System.out.println("=========================================================================================================");
        System.out.println(att1);
        System.out.println(wl1);

        if (att.equals(att1) && att.hashCode() == att1.hashCode()) {
            System.out.println("我们是同一个对象");
        } else {
            System.out.println("我们不是同一个对象");
        }
        if (wl.hashCode() == wl1.hashCode() && wl.equals(wl1)) {
            System.out.println("我们是同一个对象");
        } else {
            System.out.println("我们不是同一个对象");
        }


    }
}
